#ifndef F_VAROPS_H
#define F_VAROPS_H 1

#include <tcl.h>

Tcl_Obj *varAdd(Tcl_Interp *,int,Tcl_Obj *varNameAsObj,char *varNameAsString,Tcl_Obj *obj);

#define varPush(interp,nameAsObj,nameAsString,obj) varAdd((interp),1,(nameAsObj),(nameAsString),(obj))
#define varPut(interp,nameAsObj,nameAsString,obj) varAdd((interp),0,(nameAsObj),(nameAsString),(obj))

Tcl_Obj *varGet(Tcl_Interp *,Tcl_Obj *varNameAsObj,char *varNameAsString,int count);

int vpushObjCmd(ClientData data,Tcl_Interp *interp,int objc,Tcl_Obj *const objv[]);
int vputObjCmd(ClientData data,Tcl_Interp *interp,int objc,Tcl_Obj *const objv[]);
int vgetObjCmd(ClientData data,Tcl_Interp *interp,int objc,Tcl_Obj *const objv[]);


#endif